home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / emerald / emrldsys.lha / Language / Compiler / Builtins / Character.m < prev    next >
Text File  |  1990-08-16  |  2KB  |  62 lines

  1. % @(#)Character.m    1.2  4/11/88
  2. %
  3. export _CharacterObject to "Builtins"
  4.  
  5. const _CharacterObject == immutable object _CharacterObject
  6.   export getSignature, create, literal
  7.  
  8.   const CharacterType == immutable type CharacterType
  9.     function ord -> [r : Integer]
  10.     function > [o : Character] -> [r : Boolean]
  11.       % r <- self > o
  12.     function >= [o : Character] -> [r : Boolean]
  13.       % r <- self >= o
  14.     function < [o : Character] -> [r : Boolean]
  15.       % r <- self < o
  16.     function <= [o : Character] -> [r : Boolean]
  17.       % r <- self <= o
  18.     function = [o : Character] -> [r : Boolean]
  19.       % r <- self = o
  20.     function != [o : Character] -> [r : Boolean]
  21.       % r <- self != o
  22.     function asString -> [s : String]
  23.       % s <- "c" where c is the character
  24.   end CharacterType
  25.   function getSignature -> [result : Signature]
  26.     result <- CharacterType
  27.   end getSignature
  28.   function literal [x : Integer] -> [r : CharacterType]
  29.     primitive 804 [r] <- [x]
  30.   end literal
  31.   function create -> [result : CharacterType]
  32.     result <- immutable object aCharacter
  33.       export >, >=, <, <=, =, !=, asString, ord
  34.       function > [o : Character] -> [r : Boolean]
  35.     primitive 004 [r] <- [o]
  36.       end >
  37.       function >= [o : Character] -> [r : Boolean]
  38.     primitive 104 [r] <- [o]
  39.       end >=
  40.       function < [o : Character] -> [r : Boolean]
  41.     primitive 204 [r] <- [o]
  42.       end <
  43.       function <= [o : Character] -> [r : Boolean]
  44.     primitive 304 [r] <- [o]
  45.       end <=
  46.       function = [o : Character] -> [r : Boolean]
  47.     primitive 404 [r] <- [o]
  48.       end =
  49.       function != [o : Character] -> [r : Boolean]
  50.     primitive 504 [r] <- [o]
  51.       end !=
  52.       function asString -> [s : String]
  53.     primitive 604 [s] <- []
  54.       end asString
  55.       function ord -> [r : Integer]
  56.     primitive 704 [r] <- []
  57.       end ord
  58.     end aCharacter
  59.   end create
  60. end _CharacterObject
  61.